home *** CD-ROM | disk | FTP | other *** search
-
- ------------------------------------------------------------------------------
-
- REND 1.0
-
- February 7, 1994
-
- A basic wireframe renderer for creating, visualizing and
- interacting with computer generated environments.
-
- written by Michael P. Schenck mps4466@ultb.isc.rit.edu
-
- ------------------------------------------------------------------------------
-
-
- SUMMARY -
-
- This software package was developed to provide the tools needed to
- construct, visualize, and interact with a virtual environment. The environment
- is generated from a series of primitives called models which are linked
- together and controlled through a hierarchial display map to create objects.
- There can be multiple objects and any number of nodes (action blocks) within
- a single object that link the primitives together.
-
- The view into the environment is controlled through a view structure
- which when reconfigured is used to display the next frame of graphics. The
- view is a simple "camera" implimentation using spherical coordinates and
- parameters for far and near clipping planes.
-
- Other functions available in the library include a pause function and
- a getinput function. The get input function will grab a character from the
- keyboard in a wait or nowait mode.
-
- The current implimentation of the renderer only supports drawing
- a wireframe output. Clipping is done on a "whole" polygon basis which
- means that if any of a poly's verticies are outside the clipping limits
- (view volume) then the entire poly is removed. This can create annoying
- visual artifacts if a poly is very large and near to the viewpoint.
-
-
- USING AND MAKING MODELS -
-
- The models used for the demos are in the ModelLibrary drawer which
- has a path set to it in the main program (see demo files) The Model
- Utilities drawer contains two programs. One converts an ascii model
- into the binary version needed by the renderer and the other takes
- parameters and generates a "plane" (mesh) model in binary format. Just
- execute them with no parameters to get details. The two programs are compiled
- for the 020. The input specifications for modeler are the number of
- verticies followed by the number of polys, then a list of all verticies
- followed by a list of all polys. The polys indicate each vertex that
- makes them up followed by a zero. Don't worry about closing the poly
- it is done automatically. See the cube.asc and pyramid.asc files for
- examples of the format. (both of these create unit primitives) The
- binary formats have a .bin extension
-
-
- COMPILING AND RUNNING DEMOS -
-
- To run this software you need a math coprocessor or it will crash!
- This is because it is based on a floating point environment. To recompile,
- just modify the makefiles in the graphics subsystem and the main directory
- (for the demo files) and click build (you should do the graphicssubsystem
- first of course). All you should need to change is the CPU type. You will
- need a SAS/C 6.x compiler to rebuild it the way it is right now. I havn't
- actually tried it on anything but 6.5x and 6.3, but it should work fine.
- I can't confirm that it will recompile correctly though. If you are using
- version 6.5 of SAS/C, don't reassemble the blitter code (rasterasm.a) with
- the asm in that version. For some mysterious reason it doesn't work! The
- problems with asm were fixed in 6.51 so I would advise getting the patch.
- If you don't have a compiler, compiled versions of the demos are provided
- for the 68020/6888x, and 68040/68882 processors. Just double click
- on these to run! Check out the module headers for more info on how to use
- them.
-
-
- USING THE GRAPHICS LIBRARY -
-
- For more details on how to use the library of routines, see the demo
- programs, the header files, and the modules. Sorry the code is not more
- descriptive and commented, but this library is just a small hack I wrote
- a while ago! I am currently working on an extensive C++ VR Toolkit for the
- AMIGA (see the notice with this release). I will of course be modifying this
- code to test ideas I may use in the Toolkit. First of which is to impliment
- this pathetically slow renderer in fixed point integer arithmetic. If you
- find any bugs in this software or have questions about it, just send me
- email at the above address.
-
-
- -------------------------------------------------------------------------------
- LEGAL STUFF AND DISCLAIMER
- -------------------------------------------------------------------------------
-
- Copyright (C) 1993, 1994 -- by Michael P. Schenck,
- (mps4466@ultb.isc.rit.edu)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published
- by the Free Software Foundation; either version 2 of the License,
- or (at your option) any later version.
-
- This software is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- For a copy of the GNU General Public License
- write to the Free Software Foundation, 675 Mass Ave,
- Cambridge, MA 02139, USA.
-